import _axios from "@/utils/requestUtil";
import _urlConfig from "@/config/CartURLConfig";

class Cart {

  /**
   * 添加到购物车
   * @param {*} data 
   */
    addPro2Cart(data){
    return _axios.request({
      url: _urlConfig.addPro2Cart,
      data:data,
      method: "post"
    });
  }

  /**
   * 
   * 查看购物列表信息
   */
  getCartList(){
    return _axios.request({
      url: _urlConfig.getCarts,
      method: "get"
    });
  }

  /**
   * 购车全选
   */
  selectAll(){
    return _axios.request({
      url: _urlConfig.selectAll,
      method: "post"
    });
  }

  /**
   * 购物车全反选
   */
  unselectAll(){
    return _axios.request({
      url: _urlConfig.unselectAll,
      method: "post"
    });
  }

  /**
   * 购物车中商品的单选
   * @param {*} productId ：商品id
   */
  select(productId){
    return _axios.request({
      url: _urlConfig.select,
      data : {
        productId : productId
      },
      method: "post"
    });
  }

   /**
   * 购物车商品单反选
   * @param {*} productId ：商品id
   */
  unSelect(productId){
    return _axios.request({
      url: _urlConfig.unSelect,
      data : {
        productId : productId
      },
      method: "post"
    });
  }

  /**
   * 更新购物车中的商品信息
   * @param {*} data 
   * {
   *   count: //更新商品的数量
   *   productId: //更新商品的id
   * }
   */
  update(data){
    return _axios.request({
      url: _urlConfig.update,
      data : data,
      method: "post"
    });
  }


  /**
   * 删除购物车中的商品
   * @param {*} data 
   * {
   * }
   */
  deletePros(data){
    return _axios.request({
      url: _urlConfig.deletePros,
      data : data,
      method: "post"
    });
  }

  /**
   * 获取购物车的商品数量
   */
  getCountOfPro(){
    return _axios.request({
      url: _urlConfig.getCountOfPro,
      method: "get"
    });
  }

}
export default Cart;